<?php

use App\Http\Controllers\Admin;
use App\Http\Controllers\Common;
use Illuminate\Support\Facades\Route;

/*
|--------------------------------------------------------------------------
| Admin Routes
|--------------------------------------------------------------------------
*/

/**
 * 未关联中间件
 */
Route::prefix(config('amis.tpl.admin_login_page'))->group(function () {
    Route::get('/', [Admin\LoginController::class, 'index']); // [登录]
    Route::post('login', [Admin\LoginController::class, 'login']); // [登录验证]
    Route::get('logout', [Admin\LoginController::class, 'logout']); // [退出登录]
});

/**
 * 已关联中间件
 * 【verify.login： 登录验证】
 * 【log.operation： 操作日志】
 */
Route::prefix(config('amis.tpl.admin_login_page'))->middleware(['verify.login'])->group(function () {
    Route::get('index', [Admin\IndexController::class, 'index']); // [总后台首页]
    Route::get('userInfo', [Admin\AdminuserController::class, 'userInfo']); // [用户信息]

    /*
    |--------------------------------------------------------------------------
    | Amis 路由
    |--------------------------------------------------------------------------
    */
    Route::get('menu', [Common\AmisController::class, 'menu']); // [菜单管理]
    Route::get('{action}/view', [Common\AmisController::class, 'view']); // [模板页面管理]
    Route::get('com/{action}/json', [Common\AmisController::class, 'getConfig']); // [获取组件 Json]
});

/**
 * 已关联中间件
 * 【verify.login： 登录验证】
 * 【log.operation： 操作日志】
 */
Route::prefix(config('amis.tpl.admin_login_page').'/api')->middleware(['verify.login'])->group(function () {

    Route::get('getMenu', [Admin\MenuController::class, 'getMenu']); // [获取菜单列表]
    Route::get('getSyscom', [Common\ComController::class, 'getSyscom']); // [获取组件列表]
    Route::get('getRole', [Admin\RoleController::class, 'getRole']); // [获取角色列表]
    Route::get('getSysmap', [Common\MapController::class, 'getSyscom']); // [获取组件列表]
    Route::get('getApplication', [Admin\ApplicationController::class, 'getApplication']); // [获取应用列表]
    Route::get('getApplicationCategory', [Admin\ApplicationController::class, 'getApplicationCategory']); // [获取应用 - 渠道列表]
    Route::get('getApplicationAuth', [Admin\ApplicationAuthController::class, 'getApplicationAuth']); // [获取组件列表]

    /*
    |--------------------------------------------------------------------------
    | 路由
    |--------------------------------------------------------------------------
    */
    Route::resource('comlist', Common\ComController::class); // [组件管理]
    Route::resource('map', Common\MapController::class); // [字典管理]
    Route::resource('menu', Admin\MenuController::class); // [菜单管理]
    Route::resource('operationLog', Admin\OperationLogController::class); // [操作日志管理]
    Route::resource('loginLog', Admin\LoginLogController::class); // [登录日志管理]
    Route::resource('role', Admin\RoleController::class); // [角色管理]
    Route::resource('adminuser', Admin\AdminuserController::class); // [管理员管理]
    Route::resource('setting', Admin\SettingController::class); // [配置管理]
    Route::resource('application', Admin\ApplicationController::class); // [应用管理]
    Route::resource('applicationAuth', Admin\ApplicationAuthController::class); // [应用 - 权限管理]
    Route::resource('coupon', Admin\ApplicationCouponController::class); // [应用 - 优惠码管理]
    Route::resource('setmeal', Admin\SetmealController::class); // [套餐管理]
    Route::resource('merchant', Admin\MerchantController::class); // [客户管理]

});
